#pragma once
#include "afx.h"

class CFileFindW :
	public CFileFind
{
public:
	CFileFindW(void);
	~CFileFindW(void);

	BOOL FindFile(LPCTSTR pstrName);
	BOOL FindNextFile();

	BOOL MatchesMask(DWORD dwMask);
	BOOL IsDots();

	CString GetFileURL(); 
	CString GetRoot(); 
	CString GetFilePath(); 
	CString GetFileTitle(); 
	CString GetFileName(); 
	ULONGLONG GetLength();

	BOOL GetLastAccessTime(FILETIME* pTimeStamp);
	BOOL GetLastWriteTime(FILETIME* pTimeStamp);
	BOOL GetCreationTime(FILETIME* pTimeStamp);
	BOOL GetLastAccessTime(CTime& refTime);
	BOOL GetLastWriteTime(CTime& refTime);
	BOOL GetCreationTime(CTime& refTime);

	BOOL IsReadOnly();
	BOOL IsDirectory();
	BOOL IsCompressed();
	BOOL IsSystem();
	BOOL IsHidden();
	BOOL IsTemporary();
	BOOL IsNormal();
	BOOL IsArchived();

	void Close();
	void CloseContext();

	WIN32_FIND_DATAW *m_pFoundInfo;
	WIN32_FIND_DATAW *m_pNextInfo;
	HANDLE m_hContext;
	CString m_strRoot;
};
